﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;

namespace Tetris_AntiGravity
{
    class Jugador
    {
        //private Figura figuraActual = new Figura();
        private Tablero tablero;

        public int puntaje
        {
            get
            { return tablero.puntaje;}
        }

        public int bombas
        {
            get { return tablero.bombas; }
            set { tablero.bombas = value; }
        }

        public int tornado
        {
            get { return tablero.temblor; }
            set { tablero.temblor = value; }
        }

        public int sumaLineas
        {
            get { return tablero.sumaLineas; }
            set { tablero.sumaLineas = value; }
        }

        public Boolean perdio
        {
            get { return tablero.tableroTerminado; }
        }

        public Figura figuraActual
        {
            get { return tablero.figuraActual; }
        }

        public Figura figuraSiguiente
        {
            get { return tablero.figuraSiguiente; }
        }

        public Tablero _tablero
        {
            get { return tablero; }
        }




        public Jugador(Vector2 posicionTablero, Game game)
        {
            tablero = new Tablero(posicionTablero, game);
        }

        public void Draw(GameTime gameTime, SpriteBatch spriteBatch, GraphicsDevice graphicsDevice)
        {
            
            tablero.Draw(gameTime, spriteBatch);
        }

        public void rotarFicha()
        {
            tablero.rotarFicha();
        }

        public void moverDerecha()
        {
            tablero.moverDerecha();
        }

        public void moverIzquierda()
        {
            tablero.moverIzquierda();
        }

        public void subir()
        {
            tablero.subir();
        }

        public void moverArriba(GameTime gameTime) 
        {
            tablero.moverArriba(gameTime);
        }

        public void update(GameTime gameTime)
        {
            tablero.update(gameTime);
        }


        public void agregarLinea()
        {
            
                tablero.agregarLinea();
        }

        public void eliminarLinea()
        {
           
                tablero.eliminarLinea();
            
        }

        public void lanzarTornado()
        {
            tablero.lanzarTornado();
        }

        public void lanzarTornadoOponente()
        {
            tablero.lanzarTornadoOponente();
        }

        public void lanzarGranada()
        {
            //if (this.bombas > 0)
            //{
            tablero.lanzarBomba();
                //bombas--;
            //}
        }

        public void lanzarGranadaOponente()
        {
            //if (this.bombas > 0)
            //{
            tablero.lanzarBombaOponente();
            //bombas--;
            //}
        }

        
    }
}
